home *** CD-ROM | disk | FTP | other *** search
- #ifdef E_TYPEDEFS
-
- typedef struct _E_Gadget E_Gadget;
- typedef struct _E_Gadget_Face E_Gadget_Face;
- typedef struct _E_Gadget_Change E_Gadget_Change;
- typedef struct _E_Gadget_Api E_Gadget_Api;
-
- #else
- #ifndef E_GADGET_H
- #define E_GADGET_H
-
- #define E_GADGET_TYPE 0xE0b01021
-
- struct _E_Gadget_Api
- {
- E_Module *module;
- const char *name;
- int per_zone; /* 1 - one face per zone, 0 - one per container */
- void (*func_face_init) (void *data, E_Gadget_Face *gadget_face);
- void (*func_face_free) (void *data, E_Gadget_Face *gadget_face);
- void (*func_change) (void *data, E_Gadget_Face *gadget_face, E_Gadman_Client *gmc, E_Gadman_Change change);
- void (*func_menu_init) (void *data, E_Gadget *gadget);
- void (*func_face_menu_init) (void *data, E_Gadget_Face *gadget_face);
- void *data;
- };
-
- struct _E_Gadget
- {
- E_Object e_obj_inherit;
- Evas_List *faces;
-
- E_Module *module;
- const char *name;
- E_Menu *menu;
-
- struct {
- void (*face_init) (void *data, E_Gadget_Face *gadget_face);
- void (*face_free) (void *data, E_Gadget_Face *gadget_face);
- void (*change) (void *data, E_Gadget_Face *gadget_face, E_Gadman_Client *gmc, E_Gadman_Change change);
- void (*menu_init) (void *data, E_Gadget *gadget);
- void (*face_menu_init) (void *data, E_Gadget_Face *gadget_face);
- } funcs;
-
- void *data;
- };
-
- struct _E_Gadget_Face
- {
- E_Gadget *gad;
- E_Container *con;
- E_Zone *zone;
- Evas *evas;
-
- E_Menu *menu;
- void *conf;
-
- Evas_Object *main_obj;
- Evas_Object *event_obj;
- E_Gadman_Client *gmc;
-
- void *data;
- };
-
- struct _E_Gadget_Change
- {
- E_Gadget *gadget;
- E_Gadget_Face *face;
- };
-
- EAPI E_Gadget *e_gadget_new(E_Gadget_Api *api);
- EAPI void e_gadget_face_theme_set(E_Gadget_Face *face, char *category, char *group);
-
- #endif
- #endif
-